Model-Centric, Context-Aware Software Adaptation
نویسندگان
چکیده
Software must be constantly adapted to changing requirements. The time scale, abstraction level and granularity of adaptations may vary from short-term, fine-grained adaptation to long-term, coarsegrained evolution. Fine-grained, dynamic and context-dependent adaptations can be particularly difficult to realize in long-lived, large-scale software systems. We argue that, in order to effectively and efficiently deploy such changes, adaptive applications must be built on an infrastructure that is not just model-driven, but is both model-centric and contextaware. Specifically, this means that high-level, causally-connected models of the application and the software infrastructure itself should be available at run-time, and that changes may need to be scoped to the run-time execution context. We first review the dimensions of software adaptation and evolution, and then we show how model-centric design can address the adaptation needs of a variety of applications that span these dimensions. We demonstrate through concrete examples how model-centric and context-aware designs work at the level of application interface, programming language and runtime. We then propose a research agenda for a model-centric development environment that supports dynamic software adaptation and evolution.
منابع مشابه
CAMAC: a context-aware mandatory access control model
Mandatory access control models have traditionally been employed as a robust security mechanism in multilevel security environments such as military domains. In traditional mandatory models, the security classes associated with entities are context-insensitive. However, context-sensitivity of security classes and flexibility of access control mechanisms may be required especially in pervasive c...
متن کاملA Reflective Goal-Based System for Context-Aware Adaptation
Many context-aware applications exploit current world contexts to control information access and service adaptation. To support a user centric utility model for a context-aware system, user goals are supported by the system. However, traditional goal-based approaches such as planning are hard to achieve in a context-aware environment because environments and systems are dynamic. This can lead t...
متن کاملPerCAS: An Approach to Enabling Dynamic and Personalized Adaptation for Context-Aware Services
Context-aware services often need to adapt their behaviors according to physical situations and user preferences. However, most of the existing approaches to developing context-aware services can only do adaptation based on globally defined adaptation logic without considering the personalized context-aware adaptation needs of a specific user. In this paper, we propose a novel model-driven appr...
متن کاملScenario-driven Development of Context-aware Adaptive Software Systems
Context-awareness and adaptability are highly desirable features for software systems that operate in dynamic environments. In recent years, a number of approaches have been proposed to support the development of such systems. However, elicitation of a context-aware adaptive system requirements and synthesis of the system model from its requirements are still major challenges. In this paper, we...
متن کاملDetecting Faults in Context-Aware Adaptation
Internetware applications are context-aware. They adapt their behavior based on environmental changes. However, faulty adaptation may arise when these applications face unanticipated situations. Such adaptation faults can be difficult to detect at design time. One promising approach is to statically analyze model-based context-aware applications exhaustively for all potential faults. However, i...
متن کامل